package com.dev.tools.util;


import java.util.Arrays;

/**
 * @author niu hao
 * @describe
 * @date 2022-02-2022/2/28
 */
public class ArraysUtil {

    /**
     * 异或法则
     * 注意：a、b不能为同一引用
     * 1.恒等律:x ^ 0 = x
     * 2.归零律:x ^ x = 0
     * 3.结合律:x ^ y ^ z = (x ^ y) ^ z = x ^ (y ^ z)
     * 4.自反律:x ^ y ^ x = y
     * 5.交换律:x ^ y = y ^ x
     */
    public static void swap(int[] arr, int a, int b) {
        if (arr[a] == arr[b]){
            return;
        }
        arr[a] = arr[a] ^ arr[b];
        arr[b] = arr[a] ^ arr[b];
        arr[a] = arr[a] ^ arr[b];
    }

    /**
     * 对数器
     */
    public static void compore(int[] arr){
        Arrays.sort(arr);
    }
}
